package com.school.information.core.constant;

/**
 * token 系统默认过期时间及刷新token的过期时间
 */
public class TokenConstant {
    /**
     * 系统名称
     */
    public static final String SYSTEM_NAME = "school_infomation";

    /**
     * access_token 前缀
     */
    public static final String ACCESS_TOKEN = "access_token";

    /**
     * refresh_token 前缀
     */
    public static final String REFRESH_TOKEN = "refresh_token";

    /**
     * access_token 过期时间
     */
    public static final Integer EXPIRES_IN = 60 * 60 * 8; // 以秒为单位  7200秒 两小时;

    /**
     * refresh_token 过期时间
     */
    public static final Integer REFRESH_EXPIRES_IN = 24 * 60 * 60 * 7;  // 一周

    /**
     * 验证码过期时间
     */
    public static final Integer CODE_EXPIRES_IN = 60; // 单位秒


    /**
     * 移动端过期时间
     */
    public static final Integer APP_EXPIRES_IN = 1 * 60 * 60 * 24 * 30; // 30天

    /**
     * 登录设备
     */
    public static final String LOGIN_DEVICE = "loginDevice";
    /**
     * jwt token生成的key 用户id
     */
    public static final String JWT_USER_ID = "userId";
    /**
     * jwt token生成的key 用户手机号
     */
    public static final String JWT_USER_PHONE = "userPhone";
    /**
     * jwt token生成的key 用户姓名
     */
    public static final String JWT_USER_NAME = "userName";
    /**
     * jwt token生成的key 用户权限
     */
    public static final String JWT_USER_PERMS = "userPerms";

    /**
     * jwt token生成的key 用户角色
     */
    public static final String JWT_USER_ROLES = "userRoles";

    /**
     * redis 缓存登录用户信息的key
     */
    public static final String LOGIN_USER_REDIS_KEY = "LOGIN:USER:";

    /**
     * pc登录设备
     */
    public static final String LOGIN_DEVICE_PC = "PC";
    /**
     * 移动端登录设备
     */
    public static final String LOGIN_DEVICE_MOBILE = "mobile";
    /**
     * 小程序登录
     */
    public static final String LOGIN_DEVICE_WECHAT = "wechat";

    /**
     * 登录时间
     */
    public static final String LOGIN_TIME = "loginTime";

}
